//获取⼯作流id
String workflowId = info.getWorkflowid();
//获取流程id
String requestid = info.getRequestid();
//获取RequestManager对象
RequestManager RequestManager = info.getRequestManager();
//获取当前节点id
int currentnodeid = RequestManager.getNodeid();
//下⼀个节点id
int nextnodeid = RequestManager.getNextNodeid();
//获取流程表单id
int formid = RequestManager.getFormid();
//是否为单据
int isbill = RequestManager.getIsbill();
//获取数据库主表名
String tableName = RequestManager.getBillTableName();
 
String requestid = requestinfo.getRequestid();//请求ID
String requestlevel = requestinfo.getRequestlevel();//请求紧急程度
          //当前操作类型 submit:提交/reject:退回
String src = requestinfo.getRequestManager().getSrc();
     
String workflowid = requestinfo.getWorkflowid();//流程ID
String tablename = requestinfo.getRequestManager().getBillTableName();//表单名称
int billid = requestinfo.getRequestManager().getBillid();//表单数据ID
User usr = requestinfo.getRequestManager().getUser();//获取当前操作用户对象
String requestname = requestinfo.getRequestManager().getRequestname();//请求标题
String remark = requestinfo.getRequestManager().getRemark();//当前用户提交时的签字意见
int nextnodeid =RequestManager.getNextNodeid();//获取下个节点id
int formid = requestinfo.getRequestManager().getFormid();//表单ID
 
int isbill = requestinfo.getRequestManager().getIsbill();//是否是自定义表单
//取主表数据
    	Map<String, String> mainTableDataMap = new HashMap<String, String>();
			Property[] props = request.getMainTableInfo().getProperty();
			for (int i = 0; i < props.length; i++) {
				String fieldname = props[i].getName().toLowerCase();// 字段名转换为小写
				String fieldval = Util.null2String(props[i].getValue());
				mainTableDataMap.put(fieldname, fieldval);
			}
        //取明细数据
        DetailTable[] detailtable = request.getDetailTableInfo().getDetailTable();// 获取所有明细表
        if (detailtable.length > 0) {
            for (int i = 0; i < detailtable.length; i++) {
                DetailTable dt = detailtable[i];// 指定明细表
                Row[] s = dt.getRow();// 当前明细表的所有数据,按行存储
                for (int j = 0; j < s.length; j++) {
                    Row r = s[j];// 指定行
                    Cell c[] = r.getCell();// 每行数据再按列存储
                    for (int k = 0; k < c.length; k++) {
                        Cell c1 = c[k];// 指定列
                        String name = c1.getName();// 明细字段名称
                        String value = c1.getValue();// 明细字段的值
                        System.out.println(name + " " + value);
                    }
                }
            }
        }